From 3d37160ff47f934de5c661edb4d619e88be50bd4 Mon Sep 17 00:00:00 2001 From: oliskoli Date: Thu, 17 Apr 2008 20:50:21 +0000 Subject: [PATCH] xcsv: Add some of GMSD (Garmin special data) fields. --- gpsbabel/Makefile.in | 2 +- gpsbabel/csv_util.c | 91 +++++++++++ gpsbabel/xcsv_tokens.gperf | 300 +++++++++++++++++++------------------ gpsbabel/xcsv_tokens.in | 27 ++-- 4 files changed, 267 insertions(+), 153 deletions(-) diff --git a/gpsbabel/Makefile.in b/gpsbabel/Makefile.in index 659b53c72..e97c2d6c3 100644 --- a/gpsbabel/Makefile.in +++ b/gpsbabel/Makefile.in @@ -388,7 +388,7 @@ csv_util.o: csv_util.c defs.h config.h queue.h gbtypes.h zlib/zlib.h \ jeeps/gpsdevice.h jeeps/gpssend.h jeeps/gpsread.h jeeps/gpsutil.h \ jeeps/gpsapp.h jeeps/gpsprot.h jeeps/gpscom.h jeeps/gpsfmt.h \ jeeps/gpsmath.h jeeps/gpsmem.h jeeps/gpsrqst.h jeeps/gpsinput.h \ - jeeps/gpsproj.h xmlgeneric.h xcsv_tokens.gperf + jeeps/gpsproj.h xmlgeneric.h xcsv_tokens.gperf garmin_fs.h delgpl.o: delgpl.c defs.h config.h queue.h gbtypes.h zlib/zlib.h \ zlib/zconf.h gbfile.h cet.h cet_util.h inifile.h discard.o: discard.c defs.h config.h queue.h gbtypes.h zlib/zlib.h \ diff --git a/gpsbabel/csv_util.c b/gpsbabel/csv_util.c index 5b662743d..31886f4b4 100644 --- a/gpsbabel/csv_util.c +++ b/gpsbabel/csv_util.c @@ -28,6 +28,7 @@ #include "strptime.h" #include "jeeps/gpsmath.h" #include "xmlgeneric.h" // for xml_fill_in_time. +#include "garmin_fs.h" #define MYNAME "CSV_UTIL" @@ -56,9 +57,12 @@ typedef enum { XT_ALT_METERS, XT_ANYNAME, XT_CADENCE, + XT_CITY, XT_CONSTANT, + XT_COUNTRY, XT_DESCRIPTION, XT_EXCEL_TIME, + XT_FACILITY, XT_GEOCACHE_CONTAINER, XT_GEOCACHE_DIFF, XT_GEOCACHE_HINT, @@ -107,8 +111,12 @@ typedef enum { XT_PATH_SPEED_KNOTS, XT_PATH_SPEED_KPH, XT_PATH_SPEED_MPH, + XT_PHONE_NR, + XT_POSTAL_CODE, XT_ROUTE_NAME, XT_SHORTNAME, + XT_STATE, + XT_STREET_ADDR, XT_TIMET_TIME, XT_TRACK_NAME, XT_URL, @@ -877,6 +885,17 @@ time_to_yyyymmdd(time_t t) return b; } +static garmin_fs_t * +gmsd_init(waypoint *wpt) +{ + garmin_fs_t *gmsd = GMSD_FIND(wpt); + if (gmsd == NULL) { + gmsd = garmin_fs_alloc(-1); + fs_chain_add(&wpt->fs, (format_specific_data *) gmsd); + } + return gmsd; +} + /*****************************************************************************/ /* xcsv_parse_val() - parse incoming data into the waypt structure. */ /* usage: xcsv_parse_val("-123.34", *waypt, *field_map) */ @@ -1129,6 +1148,42 @@ xcsv_parse_val(const char *s, waypoint *wpt, const field_map_t *fmp) case XT_PATH_DISTANCE_KM: /* Ignored on input */ break; + /* GMSD ****************************************************************/ + case XT_COUNTRY: { + garmin_fs_t *gmsd = gmsd_init(wpt); + GMSD_SET(country, csv_stringtrim(s, enclosure, 0)); + } + break; + case XT_STATE: { + garmin_fs_t *gmsd = gmsd_init(wpt); + GMSD_SET(state, csv_stringtrim(s, enclosure, 0)); + } + break; + case XT_CITY: { + garmin_fs_t *gmsd = gmsd_init(wpt); + GMSD_SET(city, csv_stringtrim(s, enclosure, 0)); + } + break; + case XT_STREET_ADDR: { + garmin_fs_t *gmsd = gmsd_init(wpt); + GMSD_SET(addr, csv_stringtrim(s, enclosure, 0)); + } + break; + case XT_POSTAL_CODE: { + garmin_fs_t *gmsd = gmsd_init(wpt); + GMSD_SET(postal_code, csv_stringtrim(s, enclosure, 0)); + } + break; + case XT_PHONE_NR: { + garmin_fs_t *gmsd = gmsd_init(wpt); + GMSD_SET(phone_nr, csv_stringtrim(s, enclosure, 0)); + } + break; + case XT_FACILITY: { + garmin_fs_t *gmsd = gmsd_init(wpt); + GMSD_SET(facility, csv_stringtrim(s, enclosure, 0)); + } + break; case -1: if (strncmp(fmp->key, "LON_10E", 7) == 0) { wpt->longitude = atof(s) / pow((double)10, atof(fmp->key+7)); @@ -1708,6 +1763,42 @@ xcsv_waypt_pr(const waypoint *wpt) writebuff(buff, fmp->printfc, fix); } break; + /* GMSD ************************************************************/ + case XT_COUNTRY: { + garmin_fs_t *gmsd = GMSD_FIND(wpt); + writebuff(buff, fmp->printfc, GMSD_GET(country, "")); + } + break; + case XT_STATE: { + garmin_fs_t *gmsd = GMSD_FIND(wpt); + writebuff(buff, fmp->printfc, GMSD_GET(state, "")); + } + break; + case XT_CITY: { + garmin_fs_t *gmsd = GMSD_FIND(wpt); + writebuff(buff, fmp->printfc, GMSD_GET(city, "")); + } + break; + case XT_POSTAL_CODE: { + garmin_fs_t *gmsd = GMSD_FIND(wpt); + writebuff(buff, fmp->printfc, GMSD_GET(postal_code, "")); + } + break; + case XT_STREET_ADDR: { + garmin_fs_t *gmsd = GMSD_FIND(wpt); + writebuff(buff, fmp->printfc, GMSD_GET(addr, "")); + } + break; + case XT_PHONE_NR: { + garmin_fs_t *gmsd = GMSD_FIND(wpt); + writebuff(buff, fmp->printfc, GMSD_GET(phone_nr, "")); + } + break; + case XT_FACILITY: { + garmin_fs_t *gmsd = GMSD_FIND(wpt); + writebuff(buff, fmp->printfc, GMSD_GET(facility, "")); + } + break; case -1: if (strncmp(fmp->key, "LON_10E", 7) == 0) { writebuff(buff, fmp->printfc, lon * pow((double)10, atof(fmp->key+7))); diff --git a/gpsbabel/xcsv_tokens.gperf b/gpsbabel/xcsv_tokens.gperf index e0df1bec9..728fdc837 100644 --- a/gpsbabel/xcsv_tokens.gperf +++ b/gpsbabel/xcsv_tokens.gperf @@ -1,4 +1,4 @@ -/* ANSI-C code produced by gperf version 3.0.1 */ +/* ANSI-C code produced by gperf version 3.0.2 */ /* Command-line: gperf -L ANSI-C -D -t xcsv_tokens.in */ /* Computed positions: -k'2,4-5,12' */ @@ -32,12 +32,12 @@ #line 1 "xcsv_tokens.in" struct xt_mapping {char *name; int xt_token; }; -#define TOTAL_KEYWORDS 62 +#define TOTAL_KEYWORDS 69 #define MIN_WORD_LENGTH 3 #define MAX_WORD_LENGTH 21 -#define MIN_HASH_VALUE 10 -#define MAX_HASH_VALUE 113 -/* maximum key range = 104, duplicates = 0 */ +#define MIN_HASH_VALUE 7 +#define MAX_HASH_VALUE 148 +/* maximum key range = 142, duplicates = 0 */ #ifdef __GNUC__ __inline @@ -51,32 +51,32 @@ hash (register const char *str, register unsigned int len) { static unsigned char asso_values[] = { - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 25, 114, 0, 0, 0, - 50, 15, 5, 10, 114, 50, 25, 45, 5, 0, - 40, 114, 20, 5, 5, 114, 30, 114, 10, 5, - 114, 114, 114, 114, 114, 15, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114, 114, 114, 114, 114, - 114, 114, 114, 114, 114, 114 + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 0, 149, 0, 10, 5, + 55, 40, 20, 0, 149, 60, 30, 40, 0, 20, + 70, 149, 50, 45, 30, 149, 30, 149, 40, 10, + 149, 149, 149, 149, 149, 0, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149, 149, 149, 149, 149, + 149, 149, 149, 149, 149, 149 }; register int hval = len; @@ -113,143 +113,159 @@ in_word_set (register const char *str, register unsigned int len) { static struct xt_mapping wordlist[] = { -#line 50 "xcsv_tokens.in" - {"NOTES", XT_NOTES}, -#line 58 "xcsv_tokens.in" - {"ROUTE_NAME", XT_ROUTE_NAME}, -#line 7 "xcsv_tokens.in" - {"CONSTANT", XT_CONSTANT}, -#line 30 "xcsv_tokens.in" - {"INDEX", XT_INDEX}, -#line 44 "xcsv_tokens.in" - {"LON_DIR", XT_LON_DIR}, -#line 62 "xcsv_tokens.in" - {"URL", XT_URL}, -#line 60 "xcsv_tokens.in" - {"TIMET_TIME", XT_TIMET_TIME}, -#line 42 "xcsv_tokens.in" - {"LON_DECIMAL", XT_LON_DECIMAL}, -#line 48 "xcsv_tokens.in" - {"LON_NMEA", XT_LON_NMEA}, +#line 5 "xcsv_tokens.in" + {"ANYNAME", XT_ANYNAME}, #line 43 "xcsv_tokens.in" - {"LON_DECIMALDIR", XT_LON_DECIMALDIR}, -#line 28 "xcsv_tokens.in" - {"ICON_DESCR", XT_ICON_DESCR}, -#line 8 "xcsv_tokens.in" - {"DESCRIPTION", XT_DESCRIPTION}, + {"LAT_NMEA", XT_LAT_NMEA}, #line 31 "xcsv_tokens.in" - {"ISO_TIME", XT_ISO_TIME}, -#line 25 "xcsv_tokens.in" - {"HEART_RATE", XT_HEART_RATE}, -#line 32 "xcsv_tokens.in" - {"ISO_TIME_MS", XT_ISO_TIME_MS}, + {"ICON_DESCR", XT_ICON_DESCR}, #line 6 "xcsv_tokens.in" {"CADENCE", XT_CADENCE}, -#line 46 "xcsv_tokens.in" - {"LON_HUMAN_READABLE", XT_LON_HUMAN_READABLE}, -#line 59 "xcsv_tokens.in" - {"SHORTNAME", XT_SHORTNAME}, -#line 29 "xcsv_tokens.in" - {"IGNORE", XT_IGNORE}, -#line 5 "xcsv_tokens.in" - {"ANYNAME", XT_ANYNAME}, -#line 12 "xcsv_tokens.in" - {"GEOCACHE_HINT", XT_GEOCACHE_HINT}, -#line 9 "xcsv_tokens.in" - {"EXCEL_TIME", XT_EXCEL_TIME}, -#line 36 "xcsv_tokens.in" - {"LAT_DIR", XT_LAT_DIR}, -#line 10 "xcsv_tokens.in" - {"GEOCACHE_CONTAINER", XT_GEOCACHE_CONTAINER}, -#line 13 "xcsv_tokens.in" - {"GEOCACHE_LAST_FOUND", XT_GEOCACHE_LAST_FOUND}, -#line 49 "xcsv_tokens.in" +#line 7 "xcsv_tokens.in" + {"CITY", XT_CITY}, +#line 52 "xcsv_tokens.in" {"MAP_EN_BNG", XT_MAP_EN_BNG}, -#line 34 "xcsv_tokens.in" - {"LAT_DECIMAL", XT_LAT_DECIMAL}, -#line 47 "xcsv_tokens.in" - {"LON_INT32DEG", XT_LON_INT32DEG}, -#line 40 "xcsv_tokens.in" - {"LAT_NMEA", XT_LAT_NMEA}, -#line 35 "xcsv_tokens.in" - {"LAT_DECIMALDIR", XT_LAT_DECIMALDIR}, -#line 54 "xcsv_tokens.in" - {"PATH_SPEED", XT_PATH_SPEED}, -#line 51 "xcsv_tokens.in" - {"PATH_COURSE", XT_PATH_COURSE}, +#line 39 "xcsv_tokens.in" + {"LAT_DIR", XT_LAT_DIR}, #line 15 "xcsv_tokens.in" - {"GEOCACHE_TERR", XT_GEOCACHE_TERR}, -#line 41 "xcsv_tokens.in" - {"LOCAL_TIME", XT_LOCAL_TIME}, -#line 52 "xcsv_tokens.in" - {"PATH_DISTANCE_KM", XT_PATH_DISTANCE_KM}, -#line 38 "xcsv_tokens.in" - {"LAT_HUMAN_READABLE", XT_LAT_HUMAN_READABLE}, -#line 53 "xcsv_tokens.in" - {"PATH_DISTANCE_MILES", XT_PATH_DISTANCE_MILES}, -#line 14 "xcsv_tokens.in" + {"GEOCACHE_HINT", XT_GEOCACHE_HINT}, +#line 19 "xcsv_tokens.in" {"GEOCACHE_PLACER", XT_GEOCACHE_PLACER}, -#line 23 "xcsv_tokens.in" - {"GPS_SAT", XT_GPS_SAT}, -#line 21 "xcsv_tokens.in" - {"GPS_HDOP", XT_GPS_HDOP}, -#line 18 "xcsv_tokens.in" +#line 37 "xcsv_tokens.in" + {"LAT_DECIMAL", XT_LAT_DECIMAL}, +#line 13 "xcsv_tokens.in" + {"GEOCACHE_CONTAINER", XT_GEOCACHE_CONTAINER}, +#line 16 "xcsv_tokens.in" {"GEOCACHE_ISARCHIVED", XT_GEOCACHE_ISARCHIVED}, #line 17 "xcsv_tokens.in" {"GEOCACHE_ISAVAILABLE", XT_GEOCACHE_ISAVAILABLE}, -#line 19 "xcsv_tokens.in" - {"GMT_TIME", XT_GMT_TIME}, -#line 45 "xcsv_tokens.in" - {"LON_DIRDECIMAL", XT_LON_DIRDECIMAL}, +#line 51 "xcsv_tokens.in" + {"LON_NMEA", XT_LON_NMEA}, +#line 60 "xcsv_tokens.in" + {"PATH_SPEED", XT_PATH_SPEED}, +#line 54 "xcsv_tokens.in" + {"PATH_COURSE", XT_PATH_COURSE}, +#line 61 "xcsv_tokens.in" + {"PHONE_NR", XT_PHONE_NR}, +#line 36 "xcsv_tokens.in" + {"LAT_DECIMALDIR", XT_LAT_DECIMALDIR}, +#line 55 "xcsv_tokens.in" + {"PATH_DISTANCE_KM", XT_PATH_DISTANCE_KM}, +#line 48 "xcsv_tokens.in" + {"LON_DIR", XT_LON_DIR}, +#line 12 "xcsv_tokens.in" + {"FACILITY", XT_FACILITY}, +#line 56 "xcsv_tokens.in" + {"PATH_DISTANCE_MILES", XT_PATH_DISTANCE_MILES}, +#line 46 "xcsv_tokens.in" + {"LON_DECIMAL", XT_LON_DECIMAL}, +#line 40 "xcsv_tokens.in" + {"LAT_HUMAN_READABLE", XT_LAT_HUMAN_READABLE}, +#line 67 "xcsv_tokens.in" + {"TIMET_TIME", XT_TIMET_TIME}, #line 33 "xcsv_tokens.in" - {"LATLON_HUMAN_READABLE", XT_LATLON_HUMAN_READABLE}, -#line 39 "xcsv_tokens.in" + {"INDEX", XT_INDEX}, +#line 66 "xcsv_tokens.in" + {"STREET_ADDR", XT_STREET_ADDR}, +#line 41 "xcsv_tokens.in" {"LAT_INT32DEG", XT_LAT_INT32DEG}, -#line 16 "xcsv_tokens.in" - {"GEOCACHE_TYPE", XT_GEOCACHE_TYPE}, -#line 61 "xcsv_tokens.in" - {"TRACK_NAME", XT_TRACK_NAME}, +#line 70 "xcsv_tokens.in" + {"URL", XT_URL}, +#line 45 "xcsv_tokens.in" + {"LON_DECIMALDIR", XT_LON_DECIMALDIR}, +#line 9 "xcsv_tokens.in" + {"COUNTRY", XT_COUNTRY}, +#line 44 "xcsv_tokens.in" + {"LOCAL_TIME", XT_LOCAL_TIME}, +#line 62 "xcsv_tokens.in" + {"POSTAL_CODE", XT_POSTAL_CODE}, +#line 49 "xcsv_tokens.in" + {"LON_HUMAN_READABLE", XT_LON_HUMAN_READABLE}, +#line 38 "xcsv_tokens.in" + {"LAT_DIRDECIMAL", XT_LAT_DIRDECIMAL}, #line 63 "xcsv_tokens.in" - {"URL_LINK_TEXT", XT_URL_LINK_TEXT}, -#line 26 "xcsv_tokens.in" - {"HMSG_TIME", XT_HMSG_TIME}, -#line 11 "xcsv_tokens.in" + {"ROUTE_NAME", XT_ROUTE_NAME}, +#line 10 "xcsv_tokens.in" + {"DESCRIPTION", XT_DESCRIPTION}, +#line 20 "xcsv_tokens.in" + {"GEOCACHE_TERR", XT_GEOCACHE_TERR}, +#line 18 "xcsv_tokens.in" + {"GEOCACHE_LAST_FOUND", XT_GEOCACHE_LAST_FOUND}, +#line 65 "xcsv_tokens.in" + {"STATE", XT_STATE}, +#line 42 "xcsv_tokens.in" + {"LATLON_HUMAN_READABLE", XT_LATLON_HUMAN_READABLE}, +#line 50 "xcsv_tokens.in" + {"LON_INT32DEG", XT_LON_INT32DEG}, +#line 14 "xcsv_tokens.in" {"GEOCACHE_DIFF", XT_GEOCACHE_DIFF}, -#line 24 "xcsv_tokens.in" - {"GPS_VDOP", XT_GPS_VDOP}, -#line 27 "xcsv_tokens.in" +#line 59 "xcsv_tokens.in" + {"PATH_SPEED_MPH", XT_PATH_SPEED_MPH}, +#line 53 "xcsv_tokens.in" + {"NOTES", XT_NOTES}, +#line 22 "xcsv_tokens.in" + {"GMT_TIME", XT_GMT_TIME}, +#line 30 "xcsv_tokens.in" {"HMSL_TIME", XT_HMSL_TIME}, #line 4 "xcsv_tokens.in" {"ALT_METERS", XT_ALT_METERS}, +#line 35 "xcsv_tokens.in" + {"ISO_TIME", XT_ISO_TIME}, +#line 47 "xcsv_tokens.in" + {"LON_DIRDECIMAL", XT_LON_DIRDECIMAL}, +#line 11 "xcsv_tokens.in" + {"EXCEL_TIME", XT_EXCEL_TIME}, +#line 34 "xcsv_tokens.in" + {"ISO_TIME_MS", XT_ISO_TIME_MS}, +#line 21 "xcsv_tokens.in" + {"GEOCACHE_TYPE", XT_GEOCACHE_TYPE}, +#line 29 "xcsv_tokens.in" + {"HMSG_TIME", XT_HMSG_TIME}, #line 3 "xcsv_tokens.in" {"ALT_FEET", XT_ALT_FEET}, -#line 37 "xcsv_tokens.in" - {"LAT_DIRDECIMAL", XT_LAT_DIRDECIMAL}, -#line 22 "xcsv_tokens.in" - {"GPS_PDOP", XT_GPS_PDOP}, -#line 57 "xcsv_tokens.in" - {"PATH_SPEED_MPH", XT_PATH_SPEED_MPH}, -#line 56 "xcsv_tokens.in" +#line 58 "xcsv_tokens.in" {"PATH_SPEED_KPH", XT_PATH_SPEED_KPH}, -#line 55 "xcsv_tokens.in" +#line 28 "xcsv_tokens.in" + {"HEART_RATE", XT_HEART_RATE}, +#line 57 "xcsv_tokens.in" {"PATH_SPEED_KNOTS", XT_PATH_SPEED_KNOTS}, -#line 20 "xcsv_tokens.in" - {"GPS_FIX", XT_GPS_FIX}, +#line 24 "xcsv_tokens.in" + {"GPS_HDOP", XT_GPS_HDOP}, +#line 8 "xcsv_tokens.in" + {"CONSTANT", XT_CONSTANT}, +#line 27 "xcsv_tokens.in" + {"GPS_VDOP", XT_GPS_VDOP}, #line 64 "xcsv_tokens.in" - {"YYYYMMDD_TIME", XT_YYYYMMDD_TIME} + {"SHORTNAME", XT_SHORTNAME}, +#line 71 "xcsv_tokens.in" + {"YYYYMMDD_TIME", XT_YYYYMMDD_TIME}, +#line 32 "xcsv_tokens.in" + {"IGNORE", XT_IGNORE}, +#line 68 "xcsv_tokens.in" + {"TRACK_NAME", XT_TRACK_NAME}, +#line 26 "xcsv_tokens.in" + {"GPS_SAT", XT_GPS_SAT}, +#line 23 "xcsv_tokens.in" + {"GPS_FIX", XT_GPS_FIX}, +#line 69 "xcsv_tokens.in" + {"URL_LINK_TEXT", XT_URL_LINK_TEXT}, +#line 25 "xcsv_tokens.in" + {"GPS_PDOP", XT_GPS_PDOP} }; static signed char lookup[] = { - -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, - -1, 1, -1, -1, 2, -1, 3, -1, 4, 5, -1, 6, 7, -1, - 8, 9, 10, 11, -1, 12, -1, 13, 14, 15, 16, 17, -1, 18, - 19, 20, -1, 21, -1, 22, 23, 24, 25, 26, 27, 28, 29, 30, - 31, -1, 32, -1, 33, 34, -1, 35, 36, 37, -1, 38, 39, 40, - 41, -1, -1, 42, 43, -1, 44, 45, 46, -1, 47, -1, -1, 48, - 49, -1, -1, -1, 50, -1, -1, -1, -1, 51, 52, 53, -1, -1, - 54, 55, -1, -1, -1, 56, 57, -1, -1, -1, -1, 58, -1, 59, - 60, 61 + -1, -1, -1, -1, -1, -1, -1, 0, 1, -1, 2, -1, 3, -1, + 4, 5, -1, 6, 7, -1, 8, 9, -1, 10, 11, 12, -1, -1, + 13, -1, 14, 15, -1, 16, 17, -1, 18, 19, 20, 21, -1, 22, + -1, 23, -1, 24, -1, -1, -1, -1, 25, 26, 27, 28, 29, -1, + -1, 30, -1, -1, 31, 32, -1, 33, 34, 35, 36, -1, 37, 38, + 39, 40, 41, 42, 43, 44, -1, -1, 45, 46, 47, -1, -1, 48, + 49, 50, 51, -1, 52, 53, -1, -1, -1, 54, 55, 56, 57, -1, + 58, -1, -1, -1, -1, 59, -1, -1, -1, -1, 60, 61, -1, -1, + -1, 62, -1, -1, 63, -1, -1, -1, 64, -1, 65, -1, -1, -1, + -1, -1, -1, -1, -1, -1, 66, 67, -1, -1, -1, -1, -1, -1, + -1, -1, -1, -1, -1, -1, -1, -1, 68 }; if (len <= MAX_WORD_LENGTH && len >= MIN_WORD_LENGTH) diff --git a/gpsbabel/xcsv_tokens.in b/gpsbabel/xcsv_tokens.in index a80c1f253..460ed0003 100644 --- a/gpsbabel/xcsv_tokens.in +++ b/gpsbabel/xcsv_tokens.in @@ -4,18 +4,21 @@ ALT_FEET, XT_ALT_FEET ALT_METERS, XT_ALT_METERS ANYNAME, XT_ANYNAME CADENCE, XT_CADENCE +CITY, XT_CITY CONSTANT, XT_CONSTANT +COUNTRY, XT_COUNTRY DESCRIPTION, XT_DESCRIPTION EXCEL_TIME, XT_EXCEL_TIME +FACILITY, XT_FACILITY GEOCACHE_CONTAINER, XT_GEOCACHE_CONTAINER GEOCACHE_DIFF, XT_GEOCACHE_DIFF GEOCACHE_HINT, XT_GEOCACHE_HINT +GEOCACHE_ISARCHIVED, XT_GEOCACHE_ISARCHIVED +GEOCACHE_ISAVAILABLE, XT_GEOCACHE_ISAVAILABLE GEOCACHE_LAST_FOUND, XT_GEOCACHE_LAST_FOUND GEOCACHE_PLACER, XT_GEOCACHE_PLACER GEOCACHE_TERR, XT_GEOCACHE_TERR GEOCACHE_TYPE, XT_GEOCACHE_TYPE -GEOCACHE_ISAVAILABLE, XT_GEOCACHE_ISAVAILABLE -GEOCACHE_ISARCHIVED, XT_GEOCACHE_ISARCHIVED GMT_TIME, XT_GMT_TIME GPS_FIX, XT_GPS_FIX GPS_HDOP, XT_GPS_HDOP @@ -28,21 +31,21 @@ HMSL_TIME, XT_HMSL_TIME ICON_DESCR, XT_ICON_DESCR IGNORE, XT_IGNORE INDEX, XT_INDEX -ISO_TIME, XT_ISO_TIME ISO_TIME_MS, XT_ISO_TIME_MS -LATLON_HUMAN_READABLE, XT_LATLON_HUMAN_READABLE -LAT_DECIMAL, XT_LAT_DECIMAL +ISO_TIME, XT_ISO_TIME LAT_DECIMALDIR, XT_LAT_DECIMALDIR -LAT_DIR, XT_LAT_DIR +LAT_DECIMAL, XT_LAT_DECIMAL LAT_DIRDECIMAL, XT_LAT_DIRDECIMAL +LAT_DIR, XT_LAT_DIR LAT_HUMAN_READABLE, XT_LAT_HUMAN_READABLE LAT_INT32DEG, XT_LAT_INT32DEG +LATLON_HUMAN_READABLE, XT_LATLON_HUMAN_READABLE LAT_NMEA, XT_LAT_NMEA LOCAL_TIME, XT_LOCAL_TIME -LON_DECIMAL, XT_LON_DECIMAL LON_DECIMALDIR, XT_LON_DECIMALDIR -LON_DIR, XT_LON_DIR +LON_DECIMAL, XT_LON_DECIMAL LON_DIRDECIMAL, XT_LON_DIRDECIMAL +LON_DIR, XT_LON_DIR LON_HUMAN_READABLE, XT_LON_HUMAN_READABLE LON_INT32DEG, XT_LON_INT32DEG LON_NMEA, XT_LON_NMEA @@ -51,14 +54,18 @@ NOTES, XT_NOTES PATH_COURSE, XT_PATH_COURSE PATH_DISTANCE_KM, XT_PATH_DISTANCE_KM PATH_DISTANCE_MILES, XT_PATH_DISTANCE_MILES -PATH_SPEED, XT_PATH_SPEED PATH_SPEED_KNOTS, XT_PATH_SPEED_KNOTS PATH_SPEED_KPH, XT_PATH_SPEED_KPH PATH_SPEED_MPH, XT_PATH_SPEED_MPH +PATH_SPEED, XT_PATH_SPEED +PHONE_NR, XT_PHONE_NR +POSTAL_CODE, XT_POSTAL_CODE ROUTE_NAME, XT_ROUTE_NAME SHORTNAME, XT_SHORTNAME +STATE, XT_STATE +STREET_ADDR, XT_STREET_ADDR TIMET_TIME, XT_TIMET_TIME TRACK_NAME, XT_TRACK_NAME -URL, XT_URL URL_LINK_TEXT, XT_URL_LINK_TEXT +URL, XT_URL YYYYMMDD_TIME, XT_YYYYMMDD_TIME -- 2.30.2